/* tslint:disable */
/* eslint-disable */

import React, { FunctionComponent } from 'react';
import { ViewProps } from 'react-native';
import { GProps } from 'react-native-svg';
import IconErji from './IconErji';
import IconAZhengzaizhibozhengzaibofang from './IconAZhengzaizhibozhengzaibofang';
import IconHuanyihuan from './IconHuanyihuan';
import IconJiantouLiebiaoxiangyouO from './IconJiantouLiebiaoxiangyouO';
import IconXihuan from './IconXihuan';
import IconShouye1 from './IconShouye1';
import IconYinle from './IconYinle';
import IconFaxian from './IconFaxian';
import IconShouye from './IconShouye';
export { default as IconErji } from './IconErji';
export { default as IconAZhengzaizhibozhengzaibofang } from './IconAZhengzaizhibozhengzaibofang';
export { default as IconHuanyihuan } from './IconHuanyihuan';
export { default as IconJiantouLiebiaoxiangyouO } from './IconJiantouLiebiaoxiangyouO';
export { default as IconXihuan } from './IconXihuan';
export { default as IconShouye1 } from './IconShouye1';
export { default as IconYinle } from './IconYinle';
export { default as IconFaxian } from './IconFaxian';
export { default as IconShouye } from './IconShouye';

export type IconNames = 'icon-erji' | 'icon-a-zhengzaizhibozhengzaibofang' | 'icon-huanyihuan' | 'icon-jiantou_liebiaoxiangyou_o' | 'icon-xihuan' | 'icon-shouye1' | 'icon-yinle' | 'icon-faxian' | 'icon-shouye';

interface Props extends GProps, ViewProps {
  name: IconNames;
  size?: number;
  color?: string | string[];
}

let IconFont: FunctionComponent<Props> = ({ name, ...rest }) => {
  switch (name) {
    case 'icon-erji':
      return <IconErji key="1" {...rest} />;
    case 'icon-a-zhengzaizhibozhengzaibofang':
      return <IconAZhengzaizhibozhengzaibofang key="2" {...rest} />;
    case 'icon-huanyihuan':
      return <IconHuanyihuan key="3" {...rest} />;
    case 'icon-jiantou_liebiaoxiangyou_o':
      return <IconJiantouLiebiaoxiangyouO key="4" {...rest} />;
    case 'icon-xihuan':
      return <IconXihuan key="5" {...rest} />;
    case 'icon-shouye1':
      return <IconShouye1 key="6" {...rest} />;
    case 'icon-yinle':
      return <IconYinle key="7" {...rest} />;
    case 'icon-faxian':
      return <IconFaxian key="8" {...rest} />;
    case 'icon-shouye':
      return <IconShouye key="9" {...rest} />;
  }

  return null;
};

IconFont = React.memo ? React.memo(IconFont) : IconFont;

export default IconFont;
